home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / msdos / all_dir / menu.c < prev    next >
C/C++ Source or Header  |  1991-10-18  |  2KB  |  130 lines

  1. #include <stdio.h>
  2. #include <dos.h>
  3. #include <string.h>
  4. #include <malloc.h>
  5. #include <conio.h>
  6.  
  7. #define ON      1
  8. #define OFF     0
  9.  
  10. /*
  11.  * CRT画面の部分消去
  12.  */
  13. void    cls(c)
  14. int     c;
  15. {
  16.     if(c == 0)
  17.         printf("\x1bY");
  18.     if(c == 1)
  19.         printf("\x1b[=2l");
  20.     if(c == 2)
  21.         printf("\x1b[=2J");
  22.     if(c == 3)
  23.         printf("\x1b[K");
  24. }
  25.  
  26. /*
  27.  * カーソルの表示/非表示の設定
  28.  */
  29. void    csr(c)
  30. int     c;
  31. {
  32.     if(c == ON)
  33.         printf("\x1b[0v");
  34.     else if (c == OFF)
  35.         printf("\x1b[1v");
  36. }
  37.  
  38. /*
  39.  * 画面の表示位置設定
  40.  */
  41. void    locate(pc,pl)
  42. int     pc,pl;
  43. {
  44.     printf("\x1b[%d;%dH",pl,pc);
  45. }
  46.  
  47. /*
  48.  * 表示色の設定
  49.  */
  50. void    color(c)
  51. int     c;
  52. {
  53.     static char colorbar[] = "0123456777";
  54.  
  55.     printf("\x1b[");
  56.     if(c < 10){
  57.         putchar('0');
  58.         putchar(';');
  59.         putchar('3');
  60.     }else if(c < 20){
  61.         putchar('0');
  62.         putchar(';');
  63.         putchar('7');
  64.         putchar(';');
  65.         putchar('3');
  66.     }else if(c < 30){
  67.         putchar('0');
  68.         putchar(';');
  69.         putchar('1');
  70.         putchar(';');
  71.         putchar('3');
  72.     }else if(c < 40){
  73.         putchar('0');
  74.         putchar(';');
  75.         putchar('1');
  76.         putchar(';');
  77.         putchar('7');
  78.         putchar(';');
  79.         putchar('3');
  80.     }
  81.     putchar(colorbar[c%10]);
  82.     putchar('m');
  83. }
  84.  
  85. void    back_color(c)
  86. int     c;
  87. {
  88.     static char colorbar[] = "0123456777";
  89.  
  90.     printf("\x1b[");
  91.     if(c < 10){
  92.         putchar('0');
  93.         putchar(';');
  94.         putchar('4');
  95.     }else if(c < 20){
  96.         putchar('0');
  97.         putchar(';');
  98.         putchar('7');
  99.         putchar(';');
  100.         putchar('4');
  101.     }else if(c < 30){
  102.         putchar('0');
  103.         putchar(';');
  104.         putchar('1');
  105.         putchar(';');
  106.         putchar('4');
  107.     }else if(c < 40){
  108.         putchar('0');
  109.         putchar(';');
  110.         putchar('1');
  111.         putchar(';');
  112.         putchar('7');
  113.         putchar(';');
  114.         putchar('4');
  115.     }
  116.     putchar(colorbar[c%10]);
  117.     putchar('m');
  118. }
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.